نوشته شده توسط : admin

وزارت علوم، تحقیقات و فناوری

دانشگاه علوم و فنون مازندران

پایان‌نامه کارشناسی ارشد رشته مهندسی فناوری اطلاعات

گرایش سیستم های اطلاعاتی مدیریت

عنوان:

طراحی و پیاده‌سازی یک زبان خاص دامنه برای آزمون نرم‌افزار

استاد راهنما:

دکتر حسین مؤمنی

 

برای رعایت حریم خصوصی نام نگارنده پایان نامه درج نمی شود

(در فایل دانلودی نام نویسنده موجود است)

تکه هایی از متن پایان نامه به عنوان نمونه :

(ممکن است هنگام انتقال از فایل اصلی به داخل سایت بعضی متون به هم بریزد یا بعضی نمادها و اشکال درج نشود ولی در فایل دانلودی همه چیز مرتب و کامل است)

فهرست مطالب:

فصل اول:  مقدمه و کلیات تحقیق

1-1-   مقدمه    2

1-2-   بیان مسئله. 3

1-3-   مشکل طراحی زبان خاص دامنه برای آزمون بار. 3

1-4-   روش مقابله با مشکل طراحی.. 4

1-5-   حوزه پیشنهادی مسئله. 4

1-6-   ساختار پایان‌نامه. 4

فصل دوم: ادبیات و پیشینه تحقیق

2-1 مقدمه. 7

2-2 روند تحول زبان‌ها 8

2-2-1 زبان‌های همه منظوره 8

2-2-2 صفحه گسترده‌ها و زبان‌های نسل چهارم. 8

2-2-3 برنامه‌نویسی زبان گرا 9

2-4 برنامه در برنامه‌نویسی زبان گرا 13

2-5 زبان‌های خاص دامنه. 16

2-5-1 طراحی و پیاده‌سازی زبان خاص دامنه. 18

2-5-2 انواع زبان‌های خاص دامنه. 19

2-6 گرووی، زبان میزبان. 21

2-7 آزمون نرم‌افزار. 23

2-7-1 اهداف آزمون. 24

2-7-2 انواع آزمون. 25

2-7-2-1 آزمون جعبه سفید                                                                                                                                                                           25

2-7-2-2 آزمون جعبه سیاه 25

2-8 کارهای مرتبط.. 27

فصل سوم: روش تحقیق

3-1 مقدمه. 34

3-2 آزمون نرم‌افزار. 34

3-3 مشکلات پیش روی آزمون‌نویس‌ها 35

3-4 زبان خاص دامنه برای آزمون دامنه. 35

3-4-1 نیاز به وجود یک زبان خاص دامنه برای دامنه آزمون بار. 36

3-5 آزمون نرم‌افزارهای تحت وب… 37

3-5-1 آزمون‌های سمت مشتری.. 37

3-6 معماری سیستم پیشنهادی.. 38

3-7 پارامترهای مؤثر در آزمون بار. 40

3-7-1 پارامترهای زمانی.. 40

3-7-2 پارامترهای مشخص‌کننده رخداد خطا در برنامه. 40

3-8 چارچوب‌های مورد استفاده جهت آزمون نرم‌افزارهای تحت وب… 41

3-9  طرح پیشنهادی.. 44

3-9-1 تعریف آزمون بار. 45

3-9-1-1 فرآیندهای مورد نیاز برای آزمون بار. 47

3-9-2 بررسی ساختار چهارچوب جب… 47

3-9-3  نحو زبان خاص دامنه پیشنهادی.. 49

3-9-3-1  ساختار کلی هر آزمون بار در زبان خاص دامنه پیشنهادی.. 50

3-9-3-1-1  انتخابگرها 50

3-9-3-1-2  رخدادها 55

3-9-3-1-3  ایجاد رخدادها 56

3-9-3-1-4  بارگذاری اطلاعات از فایل.. 56

فصل چهارم: محاسبات و یافته­های تحقیق

4-1 مقدمه. 58

4-2 آزمون زبان خاص دامنه پیشنهادی.. 58

4-2-1 برنامه کاربردی 1: ورود و مشاهده نتیجه. 60

4-2-2 برنامه کاربردی 2: ثبت‌نام در سایت… 65

4-3 دستاورد زبان خاص دامنه پیشنهادی.. 69

4-4 کاستی‌های DSL پیشنهادی.. 69

فصل پنجم : نتیجه­گیری و پیشنهادات

5-1 نتیجه‌گیری.. 72

5-2 کارهای آینده 76

پیوست الف: معرفی زبان گرووی.. 78

ویژگی‌های گرووی.. 79

قدرت در کد گرووی.. 81

محیط توسعه یکپارچه  گرووی و پشتیبانی ویرایشگر. 82

پیوست ب: واژه‌نامه فارسی به انگلیسی.. 83

پیوست ج: واژه‌نامه انگلیسی به فارسی.. 85

فهرست مراجع………………………………….. 87

فهرست جدول‌ها
جدول ‏2‑1:  مقایسه زبانهای خاص دامنه با زبان خاص دامنه­ی پیشنهادی.. 29

جدول ‏4‑1:  برنامه نوشته‌شده توسط زبان‌های خاص دامنه پیشنهادی جهت آزمون . . 62

جدول 4-2: آزمون بار نوشته‌شده برای برنامه 2. 66

جدول 5-1:  انجام آزمون بار با استفاده از زبان خاص دامنه پیشنهادی در مقایسه با . . . 73

فهرست شکل­ها­
شکل 2-1: برنامه‌نویسی جریان اصلی با یک زبان همه‌منظوره [2] 12

شکل 2-2: برنامه‌نویسی زبان گرا با زبان خاص دامنه [2] 13

شکل 3-1: معماری کلی زبان خاص دامنه آزمون بار. 39

شکل 3-2: مرورگر فایرفاکس بازشده تحت کنترل چارچوب وبدرایور. 42

شکل 3-3: مثالی از کد گرووی و استفاده از چارچوب جب… 42

شکل 3-4: مورد آزمون با استفاده از اسپاک… 44

شکل 3-5: ساختار پوشه بندی برای چهارچوب جب… 48

شکل 3-6: نمایی از پوشه بندی درون Geb-core. 48

شکل 3-7: ساختار درختی سند و انتخاب نوع فارغ از محل قرارگیری عنصر. 51

شکل 3-8: گزینش دو عنصر از یک کلاس در سند. 52

شکل 3-9: گزینش عنصر با ترکیب انتخابگرهای کلاس و نوع. 53

شکل 4-1: فرآیند توصیف آزمون بار در زبان خاص دامنه پیشنهادی توسط کاربر. 59

شکل 4-2: نحوه تفسیر و اجرای آزمون نوشته‌شده به زبان پیشنهادی.. 60

شکل 4-3: ورود به سایت و مشاهده نتیجه. 61

شکل 4-4: نمونه‌ای از خطای نمایش داده‌شده 61

شکل 4-5: مشاهده نتیجه «قبول» 61

شکل 4‑6: نتایج آزمون بار نوشته‌شده برای برنامه 1 بر اساس تعداد کاربران……. 63

شکل4‑7: نتایج آزمون بار نوشته‌شده برای برنامه 1 بر اساس کاربران ……. 64

شکل 4‑8: نتایج آزمون بار نوشته‌شده برای برنامه 1 بر اساس تعداد کاربران ……. 65

شکل4-9: فرم ورود اطلاعات و ثبت‌نام در وب‌سایت… 66

شکل 4-10: نتایج آزمون بار نوشته‌شده برای برنامه 2 بر اساس تعداد کاربران ……. 67

شکل 4-11: نتایج آزمون بار نوشته‌شده برای برنامه 2 بر اساس تعداد کاربران ……. 68

شکل 4‑12: نتایج آزمون بار نوشته‌شده برای برنامه 2 بر اساس تعداد کاربران ……. 68

شکل 5-1: زمان تقریبی پیاده سازی آزمون بار با استفاده از زبانهای مختلف… 75

شکل 5-2: حجم تقریبی پیاده سازی آزمون بار با استفاده از زبان های مختلف… 75

چکیده
این پایان‌نامه در مورد طراحی و پیاده‌سازی یک زبان خاص دامنه جهت انجام آزمون بار روی برنامه‌های کاربردی تحت وب است. زبان‌های خاص دامنه، زبان‌هایی هستند که برای انجام اموری در حوزه خاص و با هدف سهولت در تولید برنامه‌ها طراحی می‌شوند. در توسعه هر سیستم نرم‌افزاری، مرحله آزمون نرم‌افزار از جهات مختلف اهمیت بسیار داشته و زمان و هزینه زیادی را تحمیل می‌کند. برای نرم‌افزارهای تحت وب، آزمون بار از اهمیت ویژه‌ای برخوردار است. هدف از این پایان­نامه، ارائه زبانی است که با استفاده از آن بتوان آزمون بار برای برنامه‌های کاربردی تحت وب را با سهولت و سرعت بیشتر و با هزینه و تخصص کمتری انجام داد. در این حوزه، زبان‌های خاص دامنه به منظور انجام آزمون‌‌های واحد و آزمون‌های کاربردی ارائه‌شده‌اند. هرچند با استفاده از برخی قابلیت‌های این زبان‌ها و ترکیب آن‌ها با امکانات زبان‌های همه منظوره، می‌توان آزمون بار نیز انجام داد، اما نمی‌توان از آن‌ها به عنوان یک زبان خاص دامنه جهت آزمون بار نام برد زیرا کاربران همچنان با برخی دشواری‌های زبان‌های همه منظوره درگیر هستند؛ به عبارت دیگر زبان خاص دامنه‌ای که تنها مختص آزمون بار باشد، طراحی و یا گزارش نشده است. این پایان‌نامه در واقع پاسخی به این نیاز است. زبان خاص دامنه پیشنهادی بر مبنای زبان گرووی و چارچوب‌های جِب و اسپاک بنانهاده شده و قادر است تمامی سناریوهایی که یک کاربر انسانی در یک صفحه وب انجام می­دهد را پشتیبانی نماید. در این زبان کاربر می‌تواند مشخص کند که برنامه کاربردی مورد نظر وی، با چه تعداد کاربر به صورت همزمان مورد آزمون قرار گیرد. همچنین امکان ذخیره خروجی و نتایج آزمون به قالب‌هایی مانند XML، XLS، CSV  و TXT در نظر گرفته‌شده تا نتایج به راحتی در نرم‌افزارهای تحلیلی و آماری مورد استفاده باشد. در این پایان­نامه برای دو برنامه کاربردی تحت وب که سناریوهای متداولی هستند، دو آزمون بار انجام‌شده تا صحت عملکرد زبان در انجام آزمون بار مشخص شود. بر اساس این آزمون­ها، زبان خاص دامنه پیشنهادی زمان ایجاد یک آزمون بار را به طور تقریبی تا 40 برابر برای زبان‌های سطح بالایی چون Java و C# کاهش می‌دهد. این میزان کاهش برای زبان سطح پایین‌تری چون C++ تا 80 برابر نیز می‌رسد. از نظر کد نویسی نیز استفاده از زبان خاص دامنه پیشنهادی برای زبان‌های سطح بالای مذکور تا 6 برابر و برای زبان سطح پایینی چون C++، 10 تا 12 برابر  حجم کد نویسی را کاهش می‌دهد.

1-1- مقدمه
امروزه برنامه­های کاربردی و نرم‌افزاری نقش بسزایی در زندگی روزمره دارند و بنابراین نیاز است هرگونه خطا در این برنامه­ها به حداقل مقدار ممکن برسد. در این میان برنامه­های کاربردی وب از جمله برنامه­هایی هستند که بیشتر از بقیه مورد استفاده قرارگرفته و اهمیت یافته­اند لذا آزمون آن­ها نیز بسیار مورد توجه است. به دلیل تخصصی بودن حوزه­ی آزمون نرم­افزار، زبان­های خاص دامنه متعددی برای این حوزه به وجود آمده­اند که نسبت به زبان­های همه‌منظوره کاراتر عمل می­کنند. یکی از این حوزه­ها آزمون برنامه­های کاربردی وب است. در اکثر روش‌های تولید برنامه­های کاربردی فاز آزمون وجود دارد؛ اما در مورد برنامه­های کاربردی وب این قضیه کمی متفاوت است چرا که این برنامه­های کاربردی دو بخشی هستند. بخشی از آن­ها به قسمت سرور مربوط می­شود و بخش دیگر از مرورگر کاربر به سمت سرور رفته و از دید کاربر بررسی می­شوند؛ بنابراین برای برنامه­های کاربردی وب دو نوع آزمون برای دو بخش مختلف صورت می‌پذیرد [1]:

·        آزمون الگوریتم‌ها و عناصر داخلی سرور

·        آزمون این برنامه‌ها از دید کاربر و آزمون موارد کاربری سیستم

برای دانلود متن کامل پایان نامه اینجا کلیک کنید





لینک بالا اشتباه است

برای دانلود متن کامل اینجا کلیک کنید

       
:: بازدید از این مطلب : 601
|
امتیاز مطلب : 0
|
تعداد امتیازدهندگان : 0
|
مجموع امتیاز : 0
تاریخ انتشار : دو شنبه 7 تير 1395 | نظرات ()
مطالب مرتبط با این پست
لیست
می توانید دیدگاه خود را بنویسید


نام
آدرس ایمیل
وب سایت/بلاگ
:) :( ;) :D
;)) :X :? :P
:* =(( :O };-
:B /:) =DD :S
-) :-(( :-| :-))
نظر خصوصی

 کد را وارد نمایید:

آپلود عکس دلخواه: